#ifndef _COMMAND_PROCESSOR_H_
#define _COMMAND_PROCESSOR_H_


#include "../container/queue/Queue.h"
#include "Command.h"
/*
	class : CommandProcessor
	desc : This is used to store up commands and results
		and get the results in a usable and simple 
		fashion to make life easier.
*/
class CommandProcessor
{
	private : 
		//a queue to hold the commands and results as they are
		//executed.
		Queue<Command*> commands;
	public:
		//default constructor
		CommandProcessor();
		//adds a command to the command processor and executes it
		void addCommand(Command* c);
		//pops off a command from the front of commands.
		Command* popCommand();
};


#endif


